/**
 * 将 16 进制颜色转换为 rgba 格式
 * @param {string} hex - 16 进制颜色（如 #ff0000 或 #f00）
 * @param {number} opacity - 透明度（0~1）
 * @returns {string} rgba 颜色字符串
 */
export function hexToRgba(hex, opacity = 1) {
  // 去除可能存在的 # 符号
  hex = hex.replace('#', '');
  
  // 处理简写格式（如 #f00 → #ff0000）
  if (hex.length === 3) {
    hex = hex.split('').map(c => c + c).join('');
  }
  
  // 解析 RGB 值
  const r = parseInt(hex.substring(0, 2), 16);
  const g = parseInt(hex.substring(2, 4), 16);
  const b = parseInt(hex.substring(4, 6), 16);
  
  // 返回 rgba 字符串
  return `rgba(${r}, ${g}, ${b}, ${opacity})`;
}
